import os.path
import SCons.Options

# These are the config options for the build system
def get_options():
    opts = SCons.Options.Options('custom.py')
    opts.Add('BOOST_ROOT', 'Root directory for boost installation', '/usr')
    opts.Add('BOOST_INCLUDE_DIR', 'Include directory for boost headers',
             os.path.join('$BOOST_ROOT', 'include'))
    opts.Add('BOOST_LIB_DIR', 'Directory containing boost libraries',
             os.path.join('$BOOST_ROOT', 'lib'))
    opts.Add('BOOST_LIB_SUFFIX', 'Suffix added to boost library names (i.e. gcc-mt)',
             '')
    
    opts.Add('AO_ROOT', 'Root directory for ao installation', '/usr')
    opts.Add('AO_INCLUDE_DIR', 'Include directory for ao headers',
             os.path.join('$AO_ROOT', 'include'))
    opts.Add('AO_LIB_DIR', 'Directory containing ao libraries',
             os.path.join('$AO_ROOT', 'lib'))
    
    opts.Add('PROTOBUF_ROOT', 'Root directory for protobuf installation', '/usr')
    opts.Add('PROTOBUF_INCLUDE_DIR', 'Include directory for protobuf headers',
             os.path.join('$PROTOBUF_ROOT', 'include'))
    opts.Add('PROTOBUF_LIB_DIR', 'Directory containing protobuf libraries',
             os.path.join('$PROTOBUF_ROOT', 'lib'))

    opts.Add('VORBIS_ROOT', 'Root directory for vorbis installation', '/usr')
    opts.Add('VORBIS_INCLUDE_DIR', 'Include directory for vorbis headers',
             os.path.join('$VORBIS_ROOT', 'include'))
    opts.Add('VORBIS_LIB_DIR', 'Directory containing vorbis libraries',
             os.path.join('$VORBIS_ROOT', 'lib'))

    opts.Add('OGG_ROOT', 'Root directory for ogg installation', '/usr')
    opts.Add('OGG_INCLUDE_DIR', 'Include directory for ogg headers',
             os.path.join('$OGG_ROOT', 'include'))
    opts.Add('OGG_LIB_DIR', 'Directory containing ogg libraries',
             os.path.join('$OGG_ROOT', 'lib'))

    opts.Add('SQLITE3_ROOT', 'Root directory for sqlite3 installation', '/usr')
    opts.Add('SQLITE3_INCLUDE_DIR', 'Include directory for sqlite3 headers',
             os.path.join('$SQLITE3_ROOT', 'include'))
    opts.Add('SQLITE3_LIB_DIR', 'Directory containing sqlite3 libraries',
             os.path.join('$SQLITE3_ROOT', 'lib'))

    opts.Add('PROTOBUF_ROOT', 'Root directory for protobuf installation', '/usr')
    opts.Add('PROTOBUF_INCLUDE_DIR', 'Include directory for protobuf headers',
             os.path.join('$PROTOBUF_ROOT', 'include'))
    opts.Add('PROTOBUF_LIB_DIR', 'Directory containing protobuf libraries',
             os.path.join('$PROTOBUF_ROOT', 'lib'))

    return opts
